1. Field of the Invention
The present invention relates to methods of recording and reproducing and apparatus for recording and reproducing time codes for use in a data recorder, for example.
2. Description of the Related Art
Data recorders, for example, are occasionally required to reproduce a time at which an optional event or the like observed in recorded data has occurred. To meet such a requirement, it has heretofore been customary for a data recorder to record time codes together with data. Time codes established by the IRIG (Inter-Range Instrumentation Group) in the USA, for example, have been used as such time codes for data recorders.
The time codes of IRIG include two types of time codes, i.e., time codes of IRIG(A) and IRIG(B). These time codes will first be described below. The main difference between the time codes of IRIG(A) and IRIG(B) lies in minimum units of the time codes. The minimum unit of the time code of IRIG(A) is 0.1 second!, and the minimum unit of the time code of IRIG(B) is 1 second!.
FIG. 1 of the accompanying drawings shows the time code of IRIG(A). In FIG. 1, the time code of IRIG(A) includes codes for "0.1 second", "second", "minute", "hour", and "day" which are represented by numerical values according to the binary-coded decimal notation.
As shown in a lower portion of FIG. 1, the time code of IRIG(A) is generated by modulating a carrier signal of 10 kHz. A bit clock pulse is generated every 10 cycles of the carrier signal, i.e., every 0.001 second. 100 bits constituted by such bit clock pulses constitute one set of data.
Among one set of data=100 bits, the 0th bit, the 9th bit, and those bits which are spaced from the 9th bit by successive 10 bits, i.e., the 19th bit, . . . , and the 99th bit serve as reference markers (P0.about.P10) each indicating a division of the time code. Each of the reference markers is composed of a greater amplitude corresponding to 8 cycles of the carrier signal and a smaller amplitude corresponding to 2 cycles of the carrier signal.
Between the reference markers, there are provided codes represented by numerical values for "0.1 second", "second", "minute", "hour", and "day". These codes are represented by numerical values according to the binary-coded decimal notation as described above. A binary value "0" is represented by a smaller amplitude corresponding to 2 cycles of the carrier signal, and a binary value "1" is represented by a greater amplitude corresponding to 5 cycles of the carrier signal. The waveform of the carrier signal of the binary value "0" is illustrated in the lower portion of FIG. 1.
The code represented by a numerical value for "second" is formed by 8 bits placed between the first reference marker P0 and the second reference marker P1. Specifically, the 8 bits are used to indicate values of "1", "2", "4", "8", "10", "20", and "40", with one bit left unassigned between "8" and "10". The numerical value for "second" of the time code is expressed by the sum of the values of those bits which have the binary value "1" represented by the waveform of the carrier signal.
Similarly, the code represented by a numerical value for "minute" is formed by 9 bits placed between the second reference marker P1 and the third reference marker P2. Specifically, the 9 bits are used to indicate values of "1", "2", "4", "8", "10", "20", and "40", with one bit left unassigned between "8" and "10". The last bit is left blank.
The code represented by a numerical value for "hour" is formed by 9 bits placed between the third reference marker P2 and the fourth reference marker P3. Specifically, the 9 bits are used to indicate values of "1", "2", "4", "8", "10", and "20", with one bit left unassigned between "8" and "10". The last two bits are left blank.
The code represented by a numerical value for "day" is formed by 9 bits placed between the fourth reference marker P3 and the fifth reference marker P4 and 2 bits following the fifth reference marker P4. Specifically, these 11 bits are used to indicate values of "1", "2", "4", "8", "10", "20", "40", "80", "100", and "200", with one bit left unassigned between "8" and "10".
The code represented by a numerical value for "0.1 second" is formed by 4 bits preceding the sixth reference marker P5. Specifically, the 4 bits are used to indicate values of "0.1", "0.2", "0.4", and "0.8". The 3rd, 4th and 5th bits from the fifth reference marker P4 are left blank.
A control function code for controlling operation of the data recorder in relation to the time code is assigned to 9.times.3=27 bits between the sixth reference marker P5 and the ninth reference marker P8. The control function code is optionally used by the user of the data recorder, and has no direct bearing on the present invention. Therefore, the control function code is all indicated by "0", and will not be described in detail below.
A binary code of "2.sup.0 ", "2.sup.1 ", "2.sup.2 ", "2.sup.3 ", "2.sup.4 ", "2.sup.5 ", "2.sup.6 ", "2.sup.7 ", "2.sup.8 ", "2.sup.9 ", "2.sup.10 ", "2.sup.11 ", "2.sup.12 ", "2.sup.13 ", "2.sup.14 ", "2.sup.15 ", "2.sup.16 ", "2.sup.17 ", which is a straight binary representation of the above seconds, minutes, hours, and days, is formed by 18 bits between the ninth reference marker P8 and the final reference marker P10. The last bit is left blank.
The above time code is generated repeatedly every 0.1 second. Each time the time code is repeated, the code represented by a numerical value for "0.1 second", which is formed by the 4 bits preceding the sixth reference marker P5, is incremented by 0.1. The time code is successively formed so as to include values carried up to "second", "minute", "hour", and "day".
In this manner, the time code of IRIG(A) is generated. A numerical value represented by this time code indicates the timing of a starting end of the first reference marker P0. The time code of IRIG(A) indicates the timing of 0.001 second with every successive bit clock pulse.
The time code shown in FIG. 1 signifies 173 days, 21 hours, 18 minutes, and 42.8 seconds. The position indicated by the arrow in FIG. 1 signifies the timing of 173 days, 21 hours, 18 minutes, and 42.875 seconds. With this time code, the cycles of the carrier signal may be used in time measurement for indicating the timing of 0.0001 second.
FIG. 2 of the accompanying drawings shows the time code of IRIG(B). In FIG. 2, the time code of IRIG(B) includes codes for "second", "minute", "hour", and "day" which are represented by numerical values according to the binary-coded decimal notation.
As shown in a lower portion of FIG. 2, the time code of IRIG(B) is generated by modulating a carrier signal of 1 kHz. A bit clock pulse is generated every 10 cycles of the carrier signal, i.e., every 0.01 second. 100 bits constituted by such bit clock pulses constitute one set of data.
Among one set of data=100 bits, the 0th bit, the 9th bit, and those bits which are spaced from the 9th bit by successive 10 bits, i.e., the 19th bit, . . . , and the 99th bit serve as reference markers (P0.about.P10) each indicating a division of the time code. Each of the reference markers is composed of a greater amplitude corresponding to 8 cycles of the carrier signal and a smaller amplitude corresponding to 2 cycles of the carrier signal.
In relation to the reference markers, there are provided codes represented by numerical values for "second", "minute", "hour", and "day". These codes are represented by numerical values according to the binary-coded decimal notation as described above. A binary value "0" is represented by a smaller amplitude corresponding to 2 cycles of the carrier signal, and a binary value "1" is represented by a greater amplitude corresponding to 5 cycles of the carrier signal. The waveform of the carrier signal of the binary value "0" is illustrated in the lower portion of FIG. 2.
The code represented by a numerical value for "second" is formed by 8 bits placed between the first reference marker P0 and the second reference marker P1. Specifically, the 8 bits are used to indicate values of "1", "2", "4", "8", "10", "20", and "40", with one bit left unassigned between "8", and "10". The numerical value for "second" of the time code is expressed by the sum of the values of those bits which have the binary value "1" represented by the waveform of the carrier signal.
Similarly, the code represented by a numerical value for "minute" is formed by 9 bits placed between the second reference marker P1 and the third reference marker P2. Specifically, the 9 bits are used to indicate values of "1", "2", "4", "8", "10", "20", and "40", with one bit left unassigned between "8" and "10". The last bit is left blank.
The code represented by a numerical value for "hour" is formed by 9 bits placed between the third reference marker P2 and the fourth reference marker P3. Specifically, the 9 bits are used to indicate values of "1", "2", "4", "8", "10", and "20", with one bit left unassigned between "8", and "10". The last two bits are left blank.
The code represented by a numerical value for "day" is formed by 9 bits placed between the fourth reference marker P3 and the fifth reference marker P4 and 2 bits following the fifth reference marker P4. Specifically, these 11 bits are used to indicate values of "1", "2", "4", "8", "10", "20", "40", "80", "100", and "200", with one bit left unassigned between "8" and "10". The 3rd through 9th bits from the fifth reference marker P4 are left blank.
A control function code for controlling operation of the data recorder in relation to the time code is assigned to 9.times.3=27 bits between the sixth reference marker P5 and the ninth reference marker P8. The control function code is optionally used by the user of the data recorder, and has no direct bearing on the present invention. Therefore, the control function code is all indicated by "0", and will not be described in detail below.
A binary code of "2.sup.0 ", "2.sup.1 ", "2.sup.2 ", "2.sup.3 ", "2.sup.4 ", "2.sup.5 ", "2.sup.6 ", "2.sup.7 ", "2.sup.8 ", "2.sup.9 ", "2.sup.10 ", "2.sup.11 ", "2.sup.12 ", "2.sup.13 ", "2.sup.14 ", "2.sup.15 ", "2.sup.16 ", "2.sup.17 ", which is a straight binary representation of the above seconds, minutes, hours, and days, is formed by 18 bits between the ninth reference marker P8 and the final reference marker P10. The last bit is left blank.
The above time code is generated repeatedly every 1 second. Each time the time code is repeated, the code represented by a numerical value for "second", which is formed by the 8 bits between the first reference marker P0 and the second reference marker P1, is incremented by 1. The time code is successively formed so as to include values carried up to "minute", "hour", and "day".
In this manner, the time code of IRIG(B) is generated. A numerical value represented by this time code indicates the timing of a start of the first reference marker P0. The time code of IRIG(B) indicates the timing of 0.01 second with every successive bit clock pulse.
The time code shown in FIG. 2 signifies 173 days, 21 hours, 18 minutes, and 42 seconds. The position indicated by the arrow in FIG. 2 signifies the timing of 173 days, 21 hours, 18 minutes, and 42.750 seconds. With this time code detected in an analog fashion, the cycles of the carrier signal may be used in time measurement for indicating the timing of 0.001 second.
Heretofore, the time codes of IRIG(A), IRIG(B) have been successively recorded on a single dedicated time code track assigned in a conventional so-called longitudinal multitrack data recorder. The time codes and data to be handled are simultaneously recorded and reproduced by the data recorder. With the time code of IRIG(A), it is possible to obtain time information of the data in terms of the timing of 0.0001 second. With the time code of IRIG(B), it is possible to obtain time information of the data in terms of the timing of 0.001 second.
Even if a time code recorded on a longitudinal time code track at a recording rate is reproduced at a reproducing rate different from the recording rate, the time code can be read in synchronism with the reproducing rate. Therefore, the time information relative to recorded data can be obtained even when the reproducing rate is varied. The recorded time code can effectively be utilized when data recorded over a long period of time are reproduced within a short period of time or when the time base of recorded data is expanded for a data analysis.
Data recorded with a time code may occasionally be required to be dubbed to produce a copy. When the data are recorded on multiple tracks, there are created, in a strict sense, time differences between the tracks due to the accuracy with which the head is mounted and other factors. Repeated data dubbing tends to cause the time code to suffer variations though the recorded data are not deteriorated as they are represented by digital signals.
There has been developed a data recorder having a rotary head for recording and reproducing data. Such a data recorder is highly analogous to an apparatus (VTR) for recording and reproducing a digital video signal, for example. Such data recorder with a rotary head is capable of recording a very large amount of data of up to 770 Gbits on a 19 mm-wide tape in a cassette of D-1 format, for example, which has been established by SMPTE (Society of Motion Picture and Television Engineers).
The data recorder of the type described above is also required to provide accurate times of individual data that have been recorded thereby. Apparatus for recording and reproducing video signals, for example, employ a time code prescribed by SMPTE. The time code of SMPTE is represented by encoded numerical values for hours, minutes, seconds, and frames of a video signal. The time code is recorded in relation to each frame of the video signal to help the user search for and edit desired frames.
In the apparatus for recording and reproducing video signals, the video signal has been recorded field by field, and it has been sufficient to record the time code in relation to each frame of the video signal. In the data recorder, however, the time code recorded in relation to each frame of the video signal is unable to determine correct times with sufficient accuracy.
In the case where the time codes of IRIG(A), IRIG(B) are applied to the above data recorder for recording and reproducing by the rotary head, it may be possible for the conventional data recorder to produce a longitudinal track recorded with a fixed head, for example, and record a succession of time codes on the longitudinal track. With such an arrangement, time information can be obtained in terms of each of oblique tracks recorded by the rotary head as with the SMPTE code. However, it is impossible to obtain in greater detail the time information of individual data recorded on the oblique tracks.
The above problem manifests itself particularly if the fixed head and the rotary head deviate from their proper relative positional relationship owing to an elongation or contraction of the recording medium. Specifically, when such a deviation is corrected (tracking correction), the reproduced data will be subjected to a variation corresponding to a skew in the video signal, resulting in a loss of the association between the time code recorded on the longitudinal track and the data recorded on the oblique tracks.
It has been proposed to provide areas for recording time codes in portions of oblique tracks that are recorded by the rotary head, and record the time codes in those areas with the same rotary head (transmission path) as used to record the data. According to such a proposal, the association between the time codes and the data is not lost, and it is possible to obtain correct time information of the individual data.
With the above proposal, however, the areas for recording time codes are limited to particular positions of certain tracks, for example. In order to record successive time codes, as described above, in those particular positions, a preceding time code, for example, is latched, and the latched value is recorded. As a consequence, a time code at the time associated data are recorded is not correctly recorded.
It would be possible to adjust the data rate of input data and the recording data of a data recorder to bring a particular recording position into timed relation to a time code. However, such an adjustment would be highly complex to perform. Furthermore, it would not be entirely impossible to apply this adjustment process to a so-called variable-rate data recorder which buffers input data of any optional rate and intermittently records the input data in synchronism with the recording rate inherent in the data recorder.
If the data recorder is used in combination with an apparatus which employs an existing time code, such as a time code of IRIG, then it is necessary that the time code be successively read in the same manner as with the conventional arrangement for recording the time code on the longitudinal track.